QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++20

DEFINES += NOMINMAX

# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
win32 {
    INCLUDEPATH += \
        E:/VulkanSDK/1.3.283.0/Include \
        E:/Libs/vsg/include \
        C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.20348.0\\um

    LIBS += \
        -L"E:/Libs/vsg/lib" \
        -L"E:/VulkanSDK/1.3.283.0/Lib" \
        -L"C:\\Program Files (x86)\\Windows Kits\\10\\Lib\\10.0.20348.0\\um\\x64" -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32
        DEFINES += VK_USE_PLATFORM_WIN32_KHR
            VK_KHR_WIN32_SURFACE_EXTENSION_NAME="VK_KHR_win32_surface"
}

unix {
    LIBS += \
    -L"usr/local/lib"
    DEFINES += VK_USE_PLATFORM_XCB_KHR \
            VK_KHR_XCB_SURFACE_EXTENSION_NAME="VK_USE_PLATFORM_XCB_KHR"
}

CONFIG(debug, debug|release) {
LIBS += \
    -lvsgd\
    -lvulkan-1 -lMachineIndependent -lOSDependent -lSPIRV -lGenericCodeGen -lSPIRV-Tools-opt -lSPIRV-Tools \
}
CONFIG(release, debug|release) {
LIBS += \
    -lvsg \
    -lvulkan-1 -lMachineIndependent -lOSDependent  -lSPIRV -lGenericCodeGen -lSPIRV-Tools-opt -lSPIRV-Tools \
}

SOURCES += \
    DataSingleton.cpp \
    Firework.cpp \
    FireworkManager.cpp \
    FireworkParticle.cpp \
    KeyboardMap.cpp \
    Particle.cpp \
    ViewerWindow.cpp \
    VsgManager.cpp \
    main.cpp \
    mainwindow.cpp \
    utilities.cpp

HEADERS += \
    DataSingleton.h \
    Export.h \
    Firework.h \
    FireworkManager.h \
    FireworkParticle.h \
    KeyboardMap.h \
    Particle.h \
    ViewerWindow.h \
    VsgManager.h \
    mainwindow.h \
    utilities.h

FORMS += \
    mainwindow.ui

DESTDIR = \
    ./release

OBJECTS_DIR = \
    ./obj

MOC_DIR = \
    ./moc

RCC_DIR = \
    ./qrc

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
unix:!mac:QMAKE_LFLAGS += -Wl,--rpath="usr/local/lib"
RESOURCES += \
    res.qrc
